package com.eclipse.e20200128_java8.函数式接口_模拟Function;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Function;

public class Test {
	public static void main(String[] args) {
		//传入10返回100
//		Function<Integer, Integer> func = i -> i * 10;
//		System.out.println(func.apply(10));
		
		//传入String 返回Integer
//		Function<String,Integer> func1 = s -> Integer.valueOf(s);
//		System.out.println(func1.apply("99").getClass());
		
		//把list里的String 全部转换成Integer
		List<String> list = Arrays.asList("1","2");
		
		Function1 func4 = s -> Integer.valueOf(s);
		List<Integer> list9 = m(list,func4);
		list9.forEach(q -> System.out.println(q.getClass()));

	}
	
	static List<Integer> m(List<String> list,Function1 func) {
		List<Integer> list1 = new ArrayList();
		
		for(int i=0;i<list.size();i++) {
			Integer inte = func.apply(list.get(i));
			list1.add(0, inte);
		}
		return list1;
//		for(String temp : list) {
//			System.out.println(func.apply(temp).getClass());
//		}
	}
}

interface Function1{
	Integer apply(String str);
}